import { formDataHttp } from "../http";
import { mockGetTermList } from "../mock/base";
import type { GetTermListQueryType, GetTermListResponseType } from "./base.type";

// 接口前缀
const baseUrl = "/api/base";

// 由页面控制的 mock 开关，默认关闭
let mockEnabled = false;

/**
 * @description 学期查询
 * @param {string} params.id id
 * @param {string} params.name 名称
 * @param {string} params.codes 编号,多个编号用,分隔
 * @param {string} params.year 学年
 * @param {int} params.currentPage 第几页，默认1
 * @param {int} params.numPerPage 每页条数，默认20，都为0表示查询全部
 */
export const getTermListAPI = async (
    params?: GetTermListQueryType
): Promise<GetTermListResponseType> => {
    if (mockEnabled) {
        return mockGetTermList(params);
    }
    return formDataHttp.post(`${baseUrl}/base/course/term/getTermList`, params);
};
